본문으로 건너뛰기

분석 환경 준비하기

데이터 분석가 또는 데이터 과학자들은 데이터 분석을 하는데 사용하는 각자의 환경이 있다. 이것은 직군별로 나누기 보다는 개인의 성향이나 회사나 조직에서 관항으로 물려받은 환경을 그대로 배워서 쓰는 경우가 많다. 그래서 모두 동일한 환경을 쓰고 많이 다르다.
하지만 주력으로 사용하는 도구들이 있어서 그것을 설명하고 이 책에서 사용하는 환경에 대해서 설명한다.

프로프트: 데이터 분석에 필요한 분석 도구를 알려주세요.

AI 답: 데이터 분석에 필요한 대표적인 도구들은 다음과 같습니다.

  1. 스프레드시트(Spreadsheet)
  • 예: 마이크로소프트 엑셀(Microsoft Excel), 구글 스프레드시트(Google Spreadsheet)
  • 데이터 정리, 간단한 분석, 시각화에 많이 사용됩니다.
  1. 통계 소프트웨어(Statistics Software)
  • 예: SPSS, SAS, Minitab, R, Stata 등
  • 전문적인 통계 분석과 데이터 처리에 사용됩니다.
  1. 프로그래밍 언어(Programming Language)
  • 예: 파이썬(Python), R
  • 대용량 데이터 처리, 자동화, 고급 분석, 머신러닝 등에 활용됩니다.
  1. 데이터 시각화 도구(Data Visualization Tools)
  • 예: 태블로(Tableau), 파워BI(Power BI), 구글 데이터 스튜디오(Google Data Studio)
  • 데이터를 시각적으로 표현하고 인사이트를 얻는 데 사용됩니다.
  1. 데이터베이스(Database)
  • 예: MySQL, PostgreSQL, SQLite, MongoDB 등
  • 대규모 데이터 저장, 관리, 쿼리 등에 사용됩니다.
  1. 클라우드 기반 분석 도구(Cloud-based Tools)
  • 예: 구글 코랩(Google Colab), 아마존 Sagemaker, Azure ML 등
  • 별도의 설치 없이 웹에서 데이터 분석 및 머신러닝 작업을 할 수 있습니다.
  1. 버전 관리 및 협업 도구
  • 예: 깃(Git), 깃허브(GitHub)
  • 코드 관리, 협업, 프로젝트 이력 관리에 사용됩니다.

이 내용은 AI챗봇에 따라 상당히 다른 답을 줄 것이다. 그만큼 다양하고 많은 도구들을 쓸 수 있으며 작업하는 사람의 능력과 기반 지시, 작업하는 환경에 따라 달라지기 때문이다.

스프레드시트 Spread sheet

((프롬프트)): 스프레드시트에 대해서 알려주세요 AI답: 스프레드시트(Spreadsheet)는 표 형태(행과 열)로 데이터를 입력, 저장, 관리, 계산, 분석할 수 있는 소프트웨어 도구입니다. 가장 대표적인 예로는 마이크로소프트 엑셀(Microsoft Excel), 구글 스프레드시트(Google Spreadsheet) 등이 있습니다.

스프레드시트의 주요 특징은 다음과 같습니다.

  • 데이터 입력 및 관리: 표 형태로 데이터를 손쉽게 입력하고, 행과 열을 이용해 체계적으로 정리할 수 있습니다.
  • 자동 계산: 수식과 함수를 이용해 합계, 평균, 최대/최소값, 조건부 계산 등 다양한 연산을 자동으로 처리할 수 있습니다.
  • 데이터 시각화: 차트, 그래프(막대, 선, 원 등)를 쉽게 생성하여 데이터를 시각적으로 분석할 수 있습니다.
  • 필터 및 정렬: 원하는 조건에 따라 데이터를 필터링하거나, 특정 기준으로 정렬할 수 있습니다.
  • 매크로 및 자동화: 반복 작업을 자동화할 수 있는 매크로 기능(특히 엑셀에서 제공)을 지원합니다.
  • 협업 기능: 구글 스프레드시트와 같이 여러 사용자가 동시에 문서를 편집하고 실시간으로 변경사항을 공유할 수 있습니다.

스프레드시트는 데이터 분석을 할 때 입문자부터 전문가까지 가장 널리 사용되는데 장부 관리, 엽업 관리, 가계부, 비즈니스 데이터 분석, 데이터 정리, 통계 분석, 보고서 작성, 데이터 시각화 등 다양한 용도로 활용된다. 특히 마이크로소프트 엑셀은 엑셀은 강력한 기능과 높은 호환성으로 기업, 학교, 연구소 등에서 기본 업무 도구이자 표준 도구로 쓰고 있다. 간단하게 정리하면 스프레드시트는 테이블 형태의 화면에 데이터를 입력하고 여러가지 계산을 하거나 정렬을 바꾸거하하는 고곱 계산도구이다. 반복되는 작업을 자동화 하기 위한 매크로 기능, 수치 계산과 편의를 위한 여러가지 함수를 제공하고 차트와 플롯을 포함한 그래픽스도 잘 지원한다. 엑셀과 같은 것은 VBA스크립트라는 것을 이용해 프로그래밍을 할 수도 있어 엑셀 안에서 작동하는 간단한 애플리케이션을 개발 할도 수 있다.

스프레드시트 소프트웨어는 어럿 있지만 대부분의 분석가들은 마이크로소프트 엑셀을 사용한다. 마이크로소프트가 오래전부터 판매해와 꾸준히 지원하고 있고 기능이 추가되고 개선되고 있으며 큰 무리없이 가장 잘 작동한다. 회사나 학교에서 라이센스를 구매해서 직원과 학생에게는 무료로 제공해 주는 경우가 많은 것도 많이 쓰이는 이유 중 하나이다.

그 외에 리브레 오피스, 애플의 넘버스 등 무료 오피스 도구에 내장되어 있는 스프레드시트가 있지만 데이터 분석을 하는데 많이 사용되지는 않는다.

통계 소프트웨어 Statistics software

((프롬프트)): 데이터 분석을 하는데 많이 쓰는 통계 소프트웨어를 알려주세요

AI답: 통계 소프트웨어는 크게 오픈소스와 상용 소프트웨어로 나눌 수 있습니다.

  1. 오픈소스 통계 소프트웨어
  • R: 통계 분석에 특화된 프로그래밍 언어로, 다양한 통계·머신러닝 패키지와 강력한 그래픽 기능(ggplot2 등)을 제공합니다.
  • Python: 범용 프로그래밍 언어이지만 pandas, NumPy, SciPy, scikit-learn 등 데이터 분석 라이브러리를 통해 통계 분석과 머신러닝에 널리 사용됩니다. 주피터 노트북 환경과의 연동이 강점입니다.
  • JASP: R 기반의 GUI 통계 소프트웨어로, SPSS와 유사한 인터페이스를 제공하며 표준 통계 및 베이지안 분석을 지원합니다.
  • PSPP: SPSS의 오픈소스 대체 소프트웨어로, 기본적인 통계 분석 기능과 SPSS 파일(.sav) 호환을 지원합니다.
  1. 상용 통계 소프트웨어
  • SAS: 대규모 데이터 처리와 다양한 통계·머신러닝 기능을 제공하며, 금융·제약·의료 등에서 많이 사용됩니다.
  • SPSS: GUI 기반으로 교육·사회과학 분야에서 널리 사용되며, 교차분석, ANOVA, 회귀분석 등 표준 통계 도구를 제공합니다.
  • Stata: 경제·사회과학 분야에서 인기 있으며, 패널데이터·시계열 분석에 특화되어 있습니다.
  • Minitab: 제조업·품질관리 분야에서 많이 사용되며, 직관적인 GUI와 품질관리 도구를 내장하고 있습니다.
  • JMP: 시각화 중심의 인터랙티브 통계 도구로, 탐색적 데이터 분석(EDA)에 강점이 있습니다.
  • MATLAB: 수치해석과 시뮬레이션에 강하며, 통계 및 머신러닝 툴박스를 통해 다양한 분석이 가능합니다.
  1. 기타 도구
  • Microsoft Excel: 소규모 데이터 분석과 시각화에 널리 사용되며, 확장 기능을 통해 기본 통계 분석도 가능합니다.
  • EViews: 거시경제 및 시계열 분석에 특화되어 경제·금융 분야에서 많이 사용됩니다.
  • Tableau / Power BI: 주로 데이터 시각화와 비즈니스 인텔리전스(BI)에 사용되지만, 통계적 요약 및 예측 분석 기능도 일부 포함하고 있습니다.

데이터 분석에는 전문 통계 소프트웨어를 사용해왔다. 통계학, 경제학, 컴퓨터과학, 의학 등을 전공한 사람들이 통계학에 기반한 데이터 분석을 할 때 이런 사용 도구를 사용한다. 무료 도구를 제외한 상용 도구는 매우 비싼편으로 개인이 사기에 부담이 된다. 사용법과 기능이 다르기 때문에 계속해서 사용하지 않으면 다른 도구로 전향하기 어렵다. 그래서 이직을 하거나 학교를 졸업한 후에 이 도구들을 계속해서 사용하는데 문제가 있었다. 이런 안좋은 경험으로 도구에 대한 의존성을 해결하는 노력이 있었는데 이 후 R과 같은 오픈소스이며 무료인 통계 데이터 분석 도구가 나타나면서 무료 도구로도 데이터 분석을 시도하는 사례가 대학, 연구소에서 시작되었고 지금은 원래 범용 프로그래밍 언어였던 Python도 데이터 분석 관련 패키지들이 추가되고 주피터 랩과 같은 편리한 분석 보조 도구들이 생겨나면서 사용 소프트웨어를 사용하지 않고도 데이터 분석을 할 수 있는 대안이 생겼다.

통계 분석과 데이터 과학을 전문으로 할 것이 아니면 이 소프트웨어들에 관심을 가지지 않아도 된다. 그리고 앞서 말했지만 최근에는 많은 사람들이 이런 상용 도구보다는 무료이면서 사람들이 많이 쓰는 일반화된 도구를 더 많이 사용하고 있다. R과 Python 같은 것이다. 다만 엑셀은 좀 특이하다. 상용이지만 가격이 높지 않기 때문에 금전적으로 부담이 크지 않으며 비슷한 것은 있어도 완전한 기능상 완전하게 대체핼 만한 것은 없다. 그리고 불편하지만 엑셀이 없어도 데이터 분석을 할 수는 있다.

컴퓨터 언어 computer language

데이터 분석에 컴퓨터 프로그래밍 언어를 사용하는 것은 당연한 것이다. 컴퓨터가 원래 계산을 위한 도구로 만들어졌고 컴퓨터라는 단어의 뜻이 “계산하는 사람”이라는 뜻이다.

((프롬프트)): 컴퓨터라는 단어의 어원을 알려주세요 ((AI답)): "컴퓨터"라는 단어는 영어 "computer"에서 온 말입니다. "computer"는 라틴어 "computare"에서 유래했는데, "com-"(함께)와 "putare"(계산하다, 생각하다)가 합쳐진 말입니다. 즉, "함께 계산하다" 또는 "계산하는 사람/기계"라는 의미를 가지고 있습니다.

초기에는 "computer"라는 단어가 실제로 계산을 수행하는 사람(주로 수학적 계산을 하는 여성 직원)을 가리키는 말로 사용되었습니다. 이후 전자식 계산기가 등장하면서 계산을 자동으로 수행하는 기계를 "computer"라고 부르게 되었고, 이 단어가 한국어로 음역되어 "컴퓨터"가 되었습니다.

즉, "컴퓨터"는 본래 "계산하는 사람"에서 출발해, 오늘날에는 "계산을 자동으로 처리하는 전자 기계"를 의미하게 된 것입니다.

데이터 분석을 하기 위해서는 복잡한 계산을 하거나 단순한 계산을 반복해서 많이 해야 하는 경우가 많은데 그럴 때 컴퓨터 언어로 프로그래밍은 해서 처리하면 복잡한 작업을 인간이 직접하는 것에 비해서 실수 없이 할 수 있고 단순 반복 작업도 직접하지 않아도 된다. 이런 일을 하기위해서 스프레드시트를 사용해도 되지만 단순한 작업만 가능하고 복잡한 것은 자동화하기 어렵다. 그래서 스프레드시트로 자동화하기 어려운 작업은 프로그래밍으로 바꿔서 처리하거나 데이터분석을 시작할 때 프로그래밍으로 시작하는 경우도 많아졌다. 데이터 분석을 위한 컴퓨터 언어로는 통계와 데이터 분석을 위해 만들어진 R언어와 Python이 있다. 데이터 분석을 하는데 사용하는데는 둘 중 하나 선택해서 사용하거나 모두 사용한다.

R언어 R language

R은 최초에 개발할 때 부터 통계 연구를 하기 위해서 개발된 컴퓨터 언어인데 그 전까지 비싼 소수의 상용 소프트웨어가 데이터 분석에 사용되고 있었기 때문에 발표되고 나서 인기를 오랫동안 사용되어 왔고 통계학자, 의사, 경제학자와 같은 통계 분석과 데이터 분석이 필요한 사람들이 가장 많이 쓰이는 프로그래밍 언어이며 통계 도구이다. 오픈소스이고 무료이기 때문에 비용 부담이 없는 것이 장점이다. 즉, R은 쉬운 데이터 분석부터 어려운 통계 분석을 하기에 적합한 컴퓨터 언어이다. 기초 통계, 기술 통계, 추론 통계, 데이터 시각화를 기본적으로 모두 잘 지원하고 잘 관리되는 오픈소스 커뮤니티가 있어서 커뮤니티로 부터 나오는 매우 많은 분석과 관련된 최신 패키지(모댈)를 사용할 수 있는 것도 장점이다. 다만 다른 컴퓨터 언어와 구조가 다르고 처리가 느린데다 특이한 점도 많아 다른 컴퓨터 언어에 익숙한 사람들에게는 오히려 학습해서 적응하기 어려운 면이 있다. 오히려 다른 컴퓨터 언어를 배우지 않고 처음부터 R을 배운 통계학자나 연구원들은 비교적 쉽게 익혀서 사용한다.

**Python 언어 (Python language)

Python은 범용 프로그래밍 언어로 Perl이라는 오래된 언어를 대체하려는 목잭으로 만들어졌다. Perl은 Unix, Linux 시스템에서 배치 프로세싱을 만들거나 비즈니스 로직(Business Logic, 업무에 관련된 처리를 하는 것)등 여러가지 컴퓨팅을 자동화는데 쓰인 매우 인기있는 컴표터 언어였다. 데이터 분석에도 쓰이곤 했지만 작성한 코드의 난독성과 패키지 관리 같은 것이 문제가 되었다. 현재에도 Perl언어는 쓰이고 있지만 Linux에서는 거의 대부분 Python으로 대체되었고 오래된 구형(legacy) 시스템에는 여전히 남아 있다. Python이 R언어보다 먼저 나온 컴퓨터 언어이지만 데이터 분석, 데이터 과학을 지원한 것은 R보다는 비교적 나중인데, 비교적 배우기 쉽고 편한 Python으로도 데이터 분석을 하고 싶은 욕구가 사람들에게 있었고 Python 커뮤니티의 개발자들이 필요한 도구들을 만들어서 공개하게 되면서 계속해서 발전해왔다. 바로 numpy와 matplotlib, pandas와 같은 것들이다.

한동안 데이터 분석에서 한 때 분석을 할 때 R이 더 좋은니 Python이 더 좋은지 논란이 있었다. 어떤 것을 쓰던지 상관없다. 본인에게 적합하고 익숙한 것을 쓰면 된다. 현재는 R은 고급 통계에 강하고 Python은 데이터 처리와 기계학습에 더 좋다. 최근에는 PYthon을 다목적으로 여러 가지를 할 수 있는 Python을 선호하는 경향이 있어 Python을 사용하는 사용자가 더 많다. 그래서 Python을 쓰도록 권한다. 만약 고급 통계, 경제, 의료 과학 등에 관련이 깊거나 관심이 많다면 R을 따로 학습해서 사용해보는 것을 추천한다. 이 책에서는 파이썬(Python)을 데이터 분석을 하는데 사용할 것이다.

다른 컴퓨터 언어로는 데이터 분석을 하지 않는가를 궁금해 할 수 있다. 다언 언어로도 데이터 분석을 할 수 있지만 Python과 R에 비해서 매우 복잡한 코딩을 해야 하거나 필요한 패키지가 없어서 직접 만들어야 하거나 코딩하는데 시간이 많이 걸리는 문제가 있다. 가능하지만 불편하고 시간이 많이 걸린다. 데이터 분석이 아닌 기계학습, 인공지능의 모듈이나 서비스를 만드는 작업에는 C++, Rust, Java 같은 언어를 쓰기도 한다. 처리 속도로 인한 문제로 짧은 시간안에 많은 처리를 해야 하기 때문이다. Python과 R은 처리속도가 느리다.

데이터 시각화 도구 Data visualization tools

데이터 시각화(Data visualization)은 데이터를 잘 이해하기 위해서 도형, 선, 글자와 같은 그래픽스를 이용해서 데이터를 표현하는 것을 말한다. 사람은 눈으로 가장 많은 정보를 받고 뇌가 하는 일의 상당 부분은 시각 처리를 위해서 사용된다. 바꿔서 말하면 데이터를 시각적으로 표현하면 사람은 매우 빨리 인지하고 이해하고 특이한 것도 잘 찾아낸다. 그래서 사람들에게 데이터에 대한 설명을 하거나 이해시키기 위한 용도로 많이 쓰이기 때문에 발표 슬라이드나 보고서 등에도 대부분 데이터시각화가 포함된다. 흔히 볼 수 있는 막대그래프, 파이차트, 선그래프도 모두 데이터 시각화이다. 데이터를 이용해서 그림을 그리려면 할 일이 매우 많기 때문에 전문 도구를 사용하거나 프로그래밍을 한다.

((프롬프트)): 널리 쓰이는 데이터 시각화 도구를 알려주세요

AI답: 데이터 시각화 도구는 크게 독립형 소프트웨어와 프로그래밍 언어 기반 라이브러리로 나눌 수 있습니다.

  1. 독립형 시각화 소프트웨어
  • Tableau: 비즈니스 인텔리전스와 데이터 시각화에 가장 널리 사용되는 도구로, 드래그 앤 드롭 인터페이스와 강력한 대시보드 기능을 제공합니다.
  • Power BI: Microsoft에서 개발한 비즈니스 분석 도구로, Excel과의 통합이 뛰어나며 기업 환경에서 많이 사용됩니다.
  • Looker Studio(구 Google Data Studio): 구글의 무료 시각화 도구로, 구글 서비스와의 연동이 강점입니다.
  • Qlik Sense: 인메모리 처리와 연관 데이터 모델링을 특징으로 하는 시각화 플랫폼입니다.
  • Spotfire: 고급 분석 기능과 예측 모델링을 지원하는 시각화 도구입니다.
  1. 프로그래밍 언어 기반 라이브러리
  • Python: Matplotlib(기본 그래프), Seaborn(통계 시각화), Plotly(인터랙티브 그래프), Bokeh(웹 기반 시각화), Altair(선언적 시각화) 등의 라이브러리를 제공합니다.
  • R: ggplot2(문법 기반 시각화), Shiny(인터랙티브 웹 앱), plotly(인터랙티브 그래프), leaflet(지도 시각화) 등을 지원합니다.
  • JavaScript: D3.js(웹 기반 데이터 시각화의 표준), Chart.js, Highcharts, Vega 등 웹 기반 시각화 라이브러리가 있습니다.
  1. 특수 목적 시각화 도구
  • Gephi: 네트워크 및 그래프 데이터 시각화에 특화되어 있습니다.
  • Flourish: 스토리텔링 중심의 인터랙티브 시각화를 쉽게 만들 수 있습니다.
  • RAWGraphs: 복잡한 데이터셋을 위한 오픈소스 시각화 플랫폼입니다.
  • Datawrapper: 언론사에서 많이 사용하는 차트 및 지도 제작 도구입니다.
  1. 대시보드 및 BI 도구
  • Grafana: 시계열 데이터 모니터링과 대시보드 구축에 특화되어 있습니다.
  • Kibana: Elasticsearch와 함께 사용되는 로그 및 시계열 데이터 시각화 도구입니다.
  • Superset: Apache에서 개발한 오픈소스 데이터 탐색 및 시각화 플랫폼입니다.

각 도구는 사용 목적, 데이터 규모, 사용자의 기술적 배경에 따라 선택하는 것이 좋습니다.

시각화 도구는 데이터를 차트, 그래프, 플롯(plot)이나 워드클라우드, 애니메이션과 같은 것을 이용해서 인간이 데이터를 쉽게 보고 인지하도록 돕는데 사용 방식이나 형태 추구하는 방향이 모두 다르다. 그래서 수많은 데이터 시각화를 다 배우는 것은 매우 힘들고 필요한 모든 것을 모든 것을 지원하는 시각화 도구는 아마도 없을 것이다.

시각화는 코딩을 기반으로 시각화와 소프트웨어로 제공되는 시각화 도구로 구분할 수 있다. Python이나 R로 시각화 코딩을 해서 표현할 수 있거나, 엑셀, 태블로 등의 도구를 이용해서 시각화를 할 수 있는 것이다.

데이터 시각화 소프트웨어

잘 알려진 것으로 태블로(tableau), 스팟파이어(spotfire), 구글 데이터 스튜디오(Google Data Studio, Lookr studio)같은 것이 있고 파워BI(power bi)같은 비즈니스 인텔리전스 도구와 대시보드를 만드는 도구도 데이터 시각화 도루라고 할 수 있다. 이러 시각화 도구를 사용하지 않고 컴퓨터 언어로 데이터 시각화를 직접 할 수도 있다. 데이터 시각화 도구들은 마우스를 이용해서 쉽게 데이터를 타색하고 시각화 방식을 변경하거나 꾸미기를 할 수 있으며 대화형(interactive)으로 작업할 수 있어 편리하고 강력하다. 하지만 좋은 기능을 사용하려면 대부분 소프트웨어 사용을 위해서 비용을 지불해야 하며 무료 소프트웨어도 있지만 기능이 충분하지 않다. 시각화 도구는 다시 컴퓨터에 설치해서 사용하는 설치 패키지와 웹기반으로 구별할 수 있다. 각각 지원하는 기능의 종류와 실행 속도 등의 차이가 있다.

데이터 시각화를 위한 컴퓨터 언어

데이터 시각화를 위한 컴퓨터 언어가 따로 있는 것은 아니지만 특별히 더 유리한 언어가 있는데 역시 R과 Python이다. 그리고 웹기반의 시각화를 코딩해야 한다면 Javascript도 있다. R은 그래픽스를 위한 패키지를 기본 내장하고 있고 공개된 많은 시각화 모듈들도 있다. R은 처음 언어를 개발할 때 부터 데이터 시각화에 대한 부분을 고려했고 그래서 시각화를 위한 기반이 잘 구성되어 있기 때문이다. Python은 별도 패키지로 시각화를 제공하는데 Matplotlib이라는 기본 시각화 모듈과 이 모듈을 기반으로 더 덧붙여지고 편리하게 쌀 수 있는 Seaborn과 같은 것이 있다. 웹페이지를 만들고 데이터 시각화를 하고 시각화된 결과나 시각화까지 포함된 웹 리포트를 보여주려면 웹개발을 해야한다. 데이터 시각화나 리포트만 하려고 하는데 웹 개발까지 해야 한다면 무척이나 어렵다.

역시 이 책에서는 파이썬의 데이터 시각화 패키지를 이용해서 할 것이다.

이 책에서 사용할 분석 환경

이 책에서는 파이썬 언어를 이용해서 주피터 랩을 사용한다. 주피터 랩은 노트북이나 서버에 설치해서 사용할 수 있는데 설치가 번거로운 면이 있어서 많은 설명이 필요하다. 지면을 많이 할아해야 하기 때문에 이 책에서는 지면을 절약하고 읽는 분들을 편하게 하기 위해서 파이썬과 주피터 랩 환경을 무료로 제공하는 구글 코랩 서비스를 사용할 것이다. 그 외게 구글 스프레스 시트를 사용할 것이다.

준비할 것

구글 계정 만들기

이 책의 내용을 따라하기 위해서는 구글 계정이 있어야 한다. 이 책에서 사용하는 도구는 대부분 구글 계정으로 로그인해서 사용하거나 연동할 수 있다. 구글 스프레드시트와 구글 코랩을 사용하려고 해도 구글 계정이 필요하다. 만약 지메일(gmail) 계정을 가지고 있다면 지메일 계정을 특별하게 생성하지 않은 경우를 제외하고는 그 지메일 계정이 구글 계정이다. 만약 구글 계정이 없다면 지금 만들어서 준비하도록 한다.

구글 계정: https://accounts.google.com/

구글 코랩 계정 만들기

Jupyter Lab이라는 노트북 지원 패키지를 구글에서 수정하고 자체 환경에 연결해서 서비스로 제공하는 것이 Colab인데 웹브라우저마으로도 사용할 수 있고 여러가지 환경지원을 하므로 최근 매우 많이 쓰이고 있다.

접속 주소: https://colab.research.google.com/

구글 계정이 있다면 코랩 계정도 매우 쉽게 만들 수 있다. Colab은 깃허브(Github), 구글 드라이브(Google Drive)와 계정 연동을 할 수 있도록 지원하는데 노트북 파일을 구글 드라이브에 저장하고 불러오거나 Gibhub 계정에 배포하고 가져오기를 할 수 있다. Colab을 사용하지 않으려면

AI서비스 계정 만들기

ChatGPT(챗지피티), Claude(클로드), Gemimi(제미나이) 중 하나의 계정을 만들어서 접속할 수 있게 준비해야 한다.

글을 쓰는 시점에서 가장 유명하고 많이 쓰이는 AI챗봇 서비스 중 하나 이상을 선택해서 계정을 만들도록 한다.

지원하는 기능 면에서는 차이가 많지만 각 서비스에서 주력으로 제공하는 AI모델의 성능은 비슷한 편이다. 단지 미묘한 부분에서 다르고 특징이 차이가 있다. 데이터 분석과 같은 논리적인 것은 Claude가 더 낫다고 알려져 있고 ChatGPT는 창의적인 글쓰기나 창작에 강하고 Gemini는 요약과 정리를 잘 한다고 알려져 있다. 하지믄 큰틀에서 차이는 없다. 이 책에서는 위의 AI챗봇 서비스를 모두 사용했고 프롬프트와 답의 내용을 서로 비교하기도 했지만 그 중에서도 ChatGPT를 가장 많이 사용했다. 모두 무료로 기본 사용량까지는 쓸 수 있고 무료 계정은 사용량 제한과 최신 모델을 사용하지 못하거나 하는 제한이 있지만 많은 양을 쓰는 것이 아니면 충분히 쓸 수 있다. 사용량이 많아지고 충분히 만족하는 서비스를 선택했다면 그때 유료 구독으로 전환해도 된다.

만약 AI챗봇 사용법을 모른다면 메신저 앱을 사용하는 것 처럼 사용한다고 생각하고 직접시도해 보거나 사용법을 알려주는 유튜브 동영상을 찾아서 보도록 한다. 어렵지 않다.

컴퓨터에 Python과 Visual Studio Code 설치하기

이 책의 내용은 구글 Colab(코렙)을 주로 사용해서 진행하기 때문에 반드시 컴퓨터에 Python과 Visual Studio Code를 설치하지 않아도 된다. 하지만 실제 여러 분이 데이터 분석을 할 때는 구글 코랩에서 지원하지 않는 작업을 해야 할 수도 있으며 데이터를 회사 외부로 유출하지 않아야 하는 제약사항이 있을 수 있다. 그래서 회사 내의 데이터베이스에서 자료를 가져오거나 사용하는 컴퓨터의 데이터베이스를 시용하거나 다운로드 받은 파일을 쉽게 처리하려면 결국은 노트북이나 컴퓨터에서 직접 파이썬 코잉을 하고 실행해야 한다. Python을 설치하고 난 뒤에는 Jupyter Lab도 설치하고 사용할 수 있게 해야한다.

Python을 하기 위한 개발 환경인 IDE는 vscode(비주얼 스튜디오 코드)를 사용한다. vscode는 무료이며서 강략하고 다양한 기능을 지원하서 많은 사용자를 보유하고 있다.

PYthon 설치하기

윈도우에는 Python이 기본으로 설치되어 있지 않기 때문에 다운로드 받아서 설치해야 한다. 맥은 최근 것은 모두 Python이 기본 설치되어 있지만 버전이 낮다면 업그레이드하거나 기본 설치되에도 추가 설치도 가능하다.

다음의 사이트에서 본인이 사용하는 OS에 맞는 버전을 다운로드 받아서 설치하면 된다.

사이트: https://www.python.org/ 다음과 같이 AI에게 물어서 도움을 받아도 된다.

윈도우는 이렇게 설치할 수 있다.

((프롬프트)): Python을 윈도우에 설치하는 방법을 알려주세요 ((AI답)): Python을 윈도우에 설치하는 방법은 다음과 같습니다:

  1. Python 공식 웹사이트(https://www.python.org/downloads/windows/)에 접속합니다.
  2. 최신 버전의 Python 설치 파일을 다운로드합니다. 일반적으로 "Windows installer (64-bit)"를 선택하면 됩니다.
  3. 다운로드한 설치 파일을 실행합니다.
  4. 설치 화면에서 "Add Python to PATH" 옵션을 반드시 체크합니다. 이 옵션은 명령 프롬프트에서 Python을 바로 실행할 수 있게 해줍니다.
  5. "Install Now"를 클릭하여 기본 설치를 진행하거나, "Customize installation"을 선택하여 설치 옵션을 변경할 수 있습니다.
  6. 설치가 완료되면 "Close" 버튼을 클릭합니다.

설치가 제대로 되었는지 확인하려면:

  1. 명령 프롬프트(cmd)를 실행합니다.
  2. python --version 또는 python -V 명령어를 입력합니다.
  3. Python 버전 정보가 표시되면 설치가 성공적으로 완료된 것입니다.

추가로 pip(Python 패키지 관리자)가 제대로 설치되었는지 확인하려면:

  1. 명령 프롬프트에서 pip --version 명령어를 입력합니다.
  2. pip 버전 정보가 표시되면 정상적으로 설치된 것입니다.

만약 "Add Python to PATH" 옵션을 체크하지 않았다면, 시스템 환경 변수에 Python 경로를 수동으로 추가해야 합니다.

맥에 Python을 설치하는 방법은 여러가지 있는데 관리할 때 차이가 발생한다. 여러가지 차이를 AI챗봇에게 물어보고 해도 되고 사람들이 가장 많이 사용 하는 방법을 선택해도 좋다.

((프롬프트)): Python을 맥에 설치하는 방법을 알려주세요 ((AI답)): 맥에 Python을 설치하는 방법은 다음과 같습니다:

  1. Homebrew를 이용한 설치 (권장)
  • Homebrew가 설치되어 있지 않다면 먼저 설치합니다:
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  • Homebrew로 Python 설치:
    brew install python
  1. 공식 웹사이트에서 설치
  • Python 공식 웹사이트(https://www.python.org/downloads/macos/)에 접속합니다.
  • 최신 버전의 macOS용 Python 설치 파일을 다운로드합니다.
  • 다운로드한 .pkg 파일을 실행하고 설치 지침을 따릅니다.
  1. Anaconda 또는 Miniconda 사용 (데이터 과학 작업에 유용)

설치가 제대로 되었는지 확인하려면:

  1. 터미널을 열고 python3 --version 또는 python --version 명령어를 입력합니다.
  2. Python 버전 정보가 표시되면 설치가 성공적으로 완료된 것입니다.

pip(Python 패키지 관리자)가 제대로 설치되었는지 확인하려면:

  1. 터미널에서 pip3 --version 또는 pip --version 명령어를 입력합니다.
  2. pip 버전 정보가 표시되면 정상적으로 설치된 것입니다.

참고: 최신 macOS에는 기본적으로 Python이 설치되어 있을 수 있지만, 이는 시스템용이므로 개발 목적으로는 별도로 Python을 설치하는 것이 좋습니다.

Python을 설치한 후에는 vscode를 설치한다.

((프롬프트)): vscode를 윈도우에 설치하는 방법을 알려주세요 ((AI답)): 윈도우에 Visual Studio Code(VS Code)를 설치하는 방법은 다음과 같습니다:

  1. 공식 웹사이트에서 다운로드

    • Visual Studio Code 공식 웹사이트(https://code.visualstudio.com/)에 접속합니다.
    • 다운로드 버튼을 클릭하면 자동으로 윈도우용 설치 파일이 다운로드됩니다.
    • 다른 버전이 필요하면 드롭다운 메뉴에서 선택할 수 있습니다.
  2. 설치 파일 실행

    • 다운로드한 .exe 설치 파일을 실행합니다.
    • 라이선스 계약에 동의합니다.
  3. 설치 옵션 선택

    • 설치 위치를 선택합니다(기본 위치 사용 권장).
    • 시작 메뉴 폴더를 선택합니다.
    • 추가 작업 선택:
      • "PATH에 추가" 옵션을 선택하면 명령 프롬프트에서 'code' 명령으로 VS Code를 실행할 수 있습니다.
      • "파일 컨텍스트 메뉴에 'Code로 열기' 작업 추가" 옵션을 선택하면 파일 탐색기에서 우클릭으로 VS Code에서 파일을 열 수 있습니다.
      • "디렉터리 컨텍스트 메뉴에 'Code로 열기' 작업 추가" 옵션을 선택하면 폴더를 VS Code에서 열 수 있습니다.
      • 필요한 옵션을 모두 선택하는 것이 편리합니다.
  4. 설치 진행

    • "설치" 버튼을 클릭하여 설치를 시작합니다.
    • 설치가 완료되면 "완료" 버튼을 클릭합니다.
  5. VS Code 실행

    • 설치 완료 후 "Visual Studio Code 시작" 옵션이 선택되어 있으면 자동으로 실행됩니다.
    • 또는 시작 메뉴나 바탕화면 바로가기(생성했다면)를 통해 실행할 수 있습니다.
  6. Python 확장 프로그램 설치 (Python 개발을 위한 경우)

    • VS Code를 실행한 후, 왼쪽 사이드바에서 확장 프로그램 아이콘을 클릭합니다.
    • 검색창에 "Python"을 입력합니다.
    • Microsoft에서 제공하는 Python 확장 프로그램을 찾아 "설치" 버튼을 클릭합니다.

설치 후에는 필요에 따라 테마, 글꼴, 기타 설정을 사용자 지정할 수 있습니다.

설치 후에 VS code에 Python 개발을 위한 확장패키지를 추가로 설치해 주는 것이 좋다.

((프롬프트)): vscode를 맥에 설치하는 방법을 알려주세요 ((AI답)): macOS에 Visual Studio Code(VS Code)를 설치하는 방법은 다음과 같습니다:

  1. 공식 웹사이트에서 다운로드

    • Visual Studio Code 공식 웹사이트(https://code.visualstudio.com/)에 접속합니다.
    • 다운로드 버튼을 클릭합니다. 자동으로 macOS용 설치 파일이 다운로드됩니다.
    • 다른 버전이 필요하면 드롭다운 메뉴에서 선택할 수 있습니다.
  2. 설치 파일 실행

    • 다운로드한 .zip 파일이 자동으로 압축 해제되어 'Visual Studio Code.app' 파일이 생성됩니다.
    • 이 앱 파일을 Applications 폴더로 드래그하여 이동시킵니다.
  3. VS Code 실행

    • Launchpad나 Applications 폴더에서 Visual Studio Code를 찾아 실행합니다.
    • 또는 Spotlight(Command + Space)를 사용하여 'Visual Studio Code'를 검색하여 실행할 수 있습니다.
  4. 터미널에서 'code' 명령어 설정 (선택 사항)

    • VS Code를 실행한 후, Command + Shift + P를 눌러 명령 팔레트를 엽니다.
    • 'shell command'를 입력하고 'Shell Command: Install 'code' command in PATH' 옵션을 선택합니다.
    • 이렇게 하면 터미널에서 'code' 명령어를 사용하여 VS Code를 실행할 수 있습니다.
  5. Python 확장 프로그램 설치 (Python 개발을 위한 경우)

    • VS Code를 실행한 후, 왼쪽 사이드바에서 확장 프로그램 아이콘을 클릭합니다.
    • 검색창에 "Python"을 입력합니다.
    • Microsoft에서 제공하는 Python 확장 프로그램을 찾아 "설치" 버튼을 클릭합니다.

설치 후에는 필요에 따라 테마, 글꼴, 기타 설정을 사용자 지정할 수 있습니다.